//
//  main.m
//  08_Code 类的扩展
//
//  Created by dllo on 16/7/13.
//  Copyright © 2016年 yh. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "NSObject+SayHello.h" // 引category文件
#import "NSString+Uper.h"
#import "Student.h"
#import "BuyPerson.h"

int main(int argc, const char * argv[]) {
    // 1. 类扩展的方式
    // 1. category(类别 类目 分类)
    //   1. 创建category (通过Object - C创建会产生两个文件   文件名: 类 + category名 .h / .m)
    
    NSObject *objc = [[NSObject alloc] init];
    [objc sayHello];
    
    // 获取字符串首字母 并将其大写
    NSString *str = @"zhaohao";
    [str getStr:str];
    
    NSString *first = [str getFirstChar];
    NSLog(@"%@", first);
    
    // 2. Extension (延展)
    // 延展: 一般定义在.m里
    
    // 3. 代理delegate设计模式  代购
    Student *stu = [[Student alloc] init];
    BuyPerson *per = [[BuyPerson alloc] init];
    // 设定代理人
    stu.delegate = per;
    [stu seeWeChat];
    
    
    return 0;
}
